import Vue from 'vue'
import App from './App.vue'

Vue.config.productionTip = false

new Vue({
  render: h => h(App),
  /* 
    我们要赶在子组件的生命周期开始之前,把$bus放在Vue的原型对象上
    有3个生命周期函数可以选择 beforeCreate created beforeMount

  */
 beforeCreate(){
  Vue.prototype.$bus=this;
 }
 /* 
  不能把$bus的定义写在vm的后边,因为vm内的组件中mounted生命周期函数要用这个$bus
  如果把$bus放在了最后边,那么vm组件在用$bus的时候,这句话还没有执行
  这句话执行的时候,vm已经走完了生命周期,代表着内部所有的组件也走完了生命周期
  也就是说内部的组件在mounted中无法访问$bus
*/
}).$mount('#app')
